package cn.stylefeng.guns.modular.business.frequency.finance.entity;

import cn.stylefeng.guns.core.pojo.base.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;

import io.swagger.models.auth.In;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;

/**
 * 订单财务信息表
 *
 * @author yujie
 * @date 2023/05/09 17:17
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tt_finance")
public class Finance extends BaseEntity {

    /**
     * id
     */
    @TableId("id")
    private Long id;

    /**
     * 订单id
     */
    @TableField("order_id")
    private Long orderId;

    /**
     * 现付已付
     */
    @TableField("spot_has")
    private BigDecimal spotHas;

    /**
     * 现付未付
     */
    @TableField("spot_un")
    private BigDecimal spotUn;

    /**
     * 现付结算人
     */
    @TableField("spot_settlement_name")
    private String spotSettlementName;

    /**
     * 现付结算人电话
     */
    @TableField("spot_settlement_phone")
    private String spotSettlementPhone;

    /**
     * 到付已付
     */
    @TableField("delivery_has")
    private BigDecimal deliveryHas;

    /**
     * 到付未付
     */
    @TableField("delivery_un")
    private BigDecimal deliveryUn;

    /**
     * 到付结算人
     */
    @TableField("delivery_settlement_name")
    private String deliverySettlementName;

    /**
     * 到付结算人电话
     */
    @TableField("delivery_settlement_phone")
    private String deliverySettlementPhone;

    /**
     * 欠付已付
     */
    @TableField("back_has")
    private BigDecimal backHas;

    /**
     * 欠付未付
     */
    @TableField("back_un")
    private BigDecimal backUn;

    /**
     * 欠付结算人
     */
    @TableField("back_settlement_name")
    private String backSettlementName;

    /**
     * 欠付结算人电话
     */
    @TableField("back_settlement_phone")
    private String backSettlementPhone;

    /**
     * 月结已付
     */
    @TableField("slot_has")
    private BigDecimal slotHas;

    /**
     * 月结未付
     */
    @TableField("slot_un")
    private BigDecimal slotUn;

    /**
     * 月结结算人
     */
    @TableField("slot_settlement_name")
    private String slotSettlementName;

    /**
     * 月结结算人电话
     */
    @TableField("slot_settlement_phone")
    private String slotSettlementPhone;

    /**
     * 商务已付
     */
    @TableField("kickback_has")
    private BigDecimal kickbackHas;

    /**
     * 商务未付
     */
    @TableField("kickback_un")
    private BigDecimal kickbackUn;

    /**
     * 商务结算人
     */
    @TableField("kickback_settlement_name")
    private String kickbackSettlementName;

    /**
     * 商务结算人电话
     */
    @TableField("kickback_settlement_phone")
    private String kickbackSettlementPhone;

    /**
     * 提车应付
     */
    @TableField("pick")
    private BigDecimal pick;

    /**
     * 提车已付
     */
    @TableField("pick_has")
    private BigDecimal pickHas;

    /**
     * 提车未付
     */
    @TableField("pick_un")
    private BigDecimal pickUn;

    /**
     * 提车结算人
     */
    @TableField("pick_settlement_name")
    private String pickSettlementName;

    /**
     * 提车结算人电话
     */
    @TableField("pick_settlement_phone")
    private String pickSettlementPhone;

    /**
     * 提车付款方式
     */
    @TableField("pick_settlement_type")
    private Integer pickSettlementType;

    /**
     * 送车应付
     */
    @TableField("take")
    private BigDecimal take;

    /**
     * 送车已付
     */
    @TableField("take_has")
    private BigDecimal takeHas;

    /**
     * 送车未付
     */
    @TableField("take_un")
    private BigDecimal  takeUn;

    /**
     * 送车结算人
     */
    @TableField("take_settlement_name")
    private String takeSettlementName;

    /**
     * 送车结算人电话
     */
    @TableField("take_settlement_phone")
    private String takeSettlementPhone;

    /**
     * 送车付款方式
     */
    @TableField("take_settlement_type")
    private Integer takeSettlementType;

    /**
     * 应收结算状态
     */
    @TableField("collection_status")
    private Integer collectionStatus;

    /**
     * 应付结算状态
     */
    @TableField("payment_status")
    private Integer paymentStatus;

    /**
     * 是否有线上支付
     */
    @TableField("has_online_pay")
    private Integer hasOnlinePay;

    /**
     * 是否有转账凭证
     */
    @TableField("has_transfer_voucher")
    private Integer hasTransferVoucher;

    /**
     * 到付金额是否司机代收
     */
    @TableField("delivery_has_collection")
    private Integer deliveryHasCollection;

    /**
     * 租户id
     */
    @TableField(value = "tenant_id",fill = FieldFill.INSERT)
    private Long tenantId;

    //现付应付
    @TableField("spot_need")
    private BigDecimal spotNeed;
    //欠付应付
    @TableField("back_need")
    private BigDecimal backNeed;
    //到付应付
    @TableField("delivery_need")
    private BigDecimal deliveryNeed;
    //月结应付
    @TableField("slot_need")
    private BigDecimal slotNeed;


}
